﻿using System.Collections.ObjectModel;

namespace Renci.Data.Interop.OpenGIS.Gml_32
{
    /// <remarks/>
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(TypeName = "FeatureStyleType", Namespace = "http://www.opengis.net/gml/3.2")]
    [System.Xml.Serialization.XmlRootAttribute("FeatureStyle", Namespace = "http://www.opengis.net/gml/3.2", IsNullable = false)]
    public class FeatureStyleType : AbstractGMLType
    {
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("featureConstraint")]
        public string FeatureConstraint { get; set; }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("geometryStyle")]
        public Collection<GeometryStylePropertyType> GeometryStyles { get; set; }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("topologyStyle")]
        public Collection<TopologyStylePropertyType> TopologyStyles { get; set; }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("labelStyle")]
        public LabelStylePropertyType LabelStyle { get; set; }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute("featureType")]
        public string FeatureType { get; set; }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute("baseType")]
        public string BaseType { get; set; }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute("queryGrammar")]
        public QueryGrammarEnumeration QueryGrammar { get; set; }

        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool QueryGrammarSpecified { get; set; }
    }
}
